Micron Document
<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>Component-oriented database</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/Component-oriented_database"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Component-oriented_database rootpage-Component-oriented_database skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">Component-oriented database</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<p><b>Component-oriented database</b> (<b>CODB</b>) is a way of <a href="Data_administration" title="Data administration">data administration</a> and programming <a href="DBMS" class="mw-redirect" title="DBMS">DBMS</a>'s using the paradigm of the <a href="Component-oriented_programming" class="mw-redirect" title="Component-oriented programming">component-orientation</a>.
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="Concepts">Concepts</h2></div>
<p>The paradigm of <i>component-orientation</i> (CO) is a development of the <a href="Object-oriented_software_engineering" class="mw-redirect" title="Object-oriented software engineering">object-orientation</a> (OO) in <a href="Mathematical_programming" class="mw-redirect" title="Mathematical programming">programming</a> and <a href="Data_modeling" title="Data modeling">data modeling</a>, leading toward the extreme the possibilities of reuse.<sup id="cite_ref-SERGIO_1-0" class="reference"><a href="#cite_note-SERGIO-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> In this model type, <a href="Class_(computer_programming)" title="Class (computer programming)">classes</a> are aggregate in cells called <i>components</i>, that execute a role similar to the <a href="Function_(computer_science)" class="mw-redirect" title="Function (computer science)">function</a> in the <a href="Structured_programming" title="Structured programming">structured programming</a>,<sup id="cite_ref-FROHL_2-0" class="reference"><a href="#cite_note-FROHL-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> a way of processing information contemporary to the <a href="Relational_database" title="Relational database">relational database</a> model.<sup id="cite_ref-SCRPTOL_3-0" class="reference"><a href="#cite_note-SCRPTOL-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup>
</p><p>So the component-orientation mixes a set of features of its predecessor models. Understanding it is simpler while thinking of the <i>visual component</i>, that is an <a href="Application_software" title="Application software">application</a><sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> which not being deployed into an <a href="Executable" title="Executable">executable</a> or <a href="Bytecode" title="Bytecode">bytecode</a> but otherwise turned to be linked by an icon inside another application, icon when one clicks on it implements certain tasks.<sup id="cite_ref-NETB_5-0" class="reference"><a href="#cite_note-NETB-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup> Then this concepts can be extended to <i>non-visual components</i>.<sup id="cite_ref-AUR_6-0" class="reference"><a href="#cite_note-AUR-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup>
</p><p>In database activities, the component, visual or not, is an aggregate of <i>classes</i>, in the sense of <i>OO</i>, that can be linked to other ones by <i>adapters</i>.<sup id="cite_ref-TWIST_7-0" class="reference"><a href="#cite_note-TWIST-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup>
</p><p>As after the OO model conception data and code programming code are mixed in a cohesive body,<sup id="cite_ref-DRDOB_8-0" class="reference"><a href="#cite_note-DRDOB-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup> there are some difficulties in conceiving where the <i>CODB</i> and <i>CO</i> programming are separate one from the other. Although this enigma is important in conceptual epistemological area, in practical <a href="Data_processing" title="Data processing">data processing</a> there isn't so importance in this question because of usage of mapping models to large scale used software, like the mappings called <i><a href="ORDBMS" class="mw-redirect" title="ORDBMS">ORDBMS</a></i> and <i>CRDB</i> (component-relational database), in which the separation of data and code are still well defined.<sup id="cite_ref-DOCSORA_9-0" class="reference"><a href="#cite_note-DOCSORA-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="Implementation">Implementation</h2></div>
<p>In <i>programming</i> activity, the CO is often taken place with large-scale used OO languages (like <a href="C%2B%2B" title="C++">C++</a>, <a href="Java_(programming_language)" title="Java (programming language)">Java</a>) with <i>mapping adaptation</i>. In <a href="Software_design" title="Software design">designing</a> the paradigm is supported by <a href="Unified_modeling_language" class="mw-redirect" title="Unified modeling language">UML</a>. In <i>data modeling</i>, <i>data administration</i> and <a href="Database_administration" title="Database administration">database administration</a>, the <i>mapping adaptation</i> is alike the <a href="ORDBMS" class="mw-redirect" title="ORDBMS">ORDBMS</a> paradigm. The adapted paradigm to component-based models is known as <i>component-relational database</i> (CRDB).<sup id="cite_ref-HAMEU_10-0" class="reference"><a href="#cite_note-HAMEU-10"><span class="cite-bracket">[</span>10<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="Advantages">Advantages</h2></div>
<p>The main advantage of the component-oriented thinking is the optimization of reusability of work. The CO paradigm allows the use of <i>ready to use</i> applications as modules to new and bigger projects.<sup id="cite_ref-NETB_5-1" class="reference"><a href="#cite_note-NETB-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup>
</p><p>The notions of OO such as <a href="Encapsulation_(object-oriented_programming)" class="mw-redirect" title="Encapsulation (object-oriented programming)">encapsulation</a>, <a href="Inheritance_(computer_science)" class="mw-redirect" title="Inheritance (computer science)">inheritance</a> and <a href="Polymorphism_(computer_science)" title="Polymorphism (computer science)">polymorphism</a> do not necessarily lead to the idea of reusing applications as modules of new works. The CO thinking also assures that components are fully tested, as a real application, and thus there is in this model the paroxism of reuse,<sup id="cite_ref-ICTS_11-0" class="reference"><a href="#cite_note-ICTS-11"><span class="cite-bracket">[</span>11<span class="cite-bracket">]</span></a></sup> as well as the feature of understandability to end users, as corollary of the <i>app-&gt;comp</i> way of realizing the IT works.
</p><p>Even using the same software that are present in OO paradigm, there are many specific consequences in the world of data-oriented activities. In analogous way, whole models composed of classes can be treated as a part (component) of a new more comprehensive model.
</p>
<div class="mw-heading mw-heading2"><h2 id="Bibliography">Bibliography</h2></div>
<ul><li>Buschmann, Frank; Meunier, Regine; Rohnert, Hans; Sommerlad, peter. Pattern-Oriented Software Architecture, Volume 1. John Wiley &amp; Sons, 1996, <style data-mw-deduplicate="TemplateStyles:r1238218222">
/* start https://en.wikipedia.org/ */


.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("./mw/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("./mw/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("./mw/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("./mw/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}


/* end https://en.wikipedia.org/ */
</style><a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>047195869-7</bdi>.</li>
<li>Cho, Eun-Sun; Han, Sang-Yong; Kim, Hyoung-Joo. A New Data Abstraction Layer Required For OODBMS, Proceedings of 1997 International Database engineering and Applications Symposium (IDEAS’97).</li>
<li>Clemente, Pedro J.; Hernandez, Juan. Aspect Component Based Software Engineering, Proceedings of the Second AOSD Workshop on Aspects, Components, and Patterns for Infrastructure Software (ACP4IS), March 2003.</li>
<li>Clements, Paul. From subroutines to subsystems: Component-Based Software Development. Brown, Allen. Component-Based Software Engineering: Selected Papers from Software Institute, 1996.</li>
<li>Erich Gamma, Erich; Helm, Richerd; Johnson, Ralph; Vilssides, John. Design Patterns. Elements of Reusable Object-Oriented Software. Addison-Wesley, 1995, <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>0201633612</bdi>.</li>
<li>Garcia-Molina, Hector; Ulman, Jeffrey D.; Widom, Jennifer, Database Systems – A complete book. Prentice Hall, 2002, <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>0131873253</bdi>.</li>
<li>Pfister, C.;Szyperski, C.. Why Objects Are Not Enough, Proceedings of Component Users Conference, Munich, Germany, 1996.</li>
<li>Rotaru, Octavian Paul;Dobre, Marian;Petrescu, Mircea. Integrity and Consistency Aspects in Component-Oriented Databases, Proceedings of the International Symposium on Innovation in Information.</li>
<li>Stroustrup, Bjarne. Why C++ is not just an Object-Oriented Programming Language, Addendum to OOPSLA95 Proceedings, ACM OOPS Messenger, October 1995.</li>
<li><cite id="CITEREFSzyperski,_Clemens1998" class="citation book cs1">Szyperski, Clemens (1998). <i>Component Software – Beyond Object-Oriented Programming</i>. ACM Press/Addison-Wesley. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>0201178885</bdi>.</cite></li></ul>
<div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2></div>
<ul><li><a href="Object_Database" class="mw-redirect" title="Object Database">Object Database</a></li>
<li><a href="Relational_model" title="Relational model">Relational model</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1239543626">
/* start https://en.wikipedia.org/ */


.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}


/* end https://en.wikipedia.org/ */
</style><div class="reflist">
<div class="mw-references-wrap mw-references-columns"><ol class="references">
<li id="cite_note-SERGIO-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-SERGIO_1-0">^</a></b></span> <span class="reference-text"><cite id="CITEREFCesareLycettMacredie2006" class="citation book cs1">Cesare, Sergio de; Lycett, Mark; Macredie, Bobert. D. (2006). <a rel="nofollow" class="external text" href="https://books.google.com/books?id=UOo5C5mtuWMC&amp;dq=component+orientation+increase+oo+reuse&amp;pg=PA50"><i>Development of Component-Based Information Systems</i></a>. Vol.&nbsp;2 (1st&nbsp;ed.). New York: M. E. Sharp. p.&nbsp;52. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>0765612488</bdi>. <a href="ISSN_(identifier)" class="mw-redirect" title="ISSN (identifier)">ISSN</a>&nbsp;<a rel="nofollow" class="external text" href="https://search.worldcat.org/issn/1554-6152">1554-6152</a>.</cite></span>
</li>
<li id="cite_note-FROHL-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-FROHL_2-0">^</a></b></span> <span class="reference-text"><cite id="CITEREFFröhlich2003" class="citation book cs1">Fröhlich, Peter Hans (2003). <i>Component-Oriented Programming Languages: Why, What, and How</i> (1&nbsp;ed.). Irvine: University of California. p.&nbsp;2.</cite></span>
</li>
<li id="cite_note-SCRPTOL-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-SCRPTOL_3-0">^</a></b></span> <span class="reference-text"><cite id="CITEREFSureau,_Denis2012" class="citation web cs1">Sureau, Denis (27 March 2012). <a rel="nofollow" class="external text" href="https://web.archive.org/web/20121016231922/http://www.scriptol.com/programming/history.php">"History of Programming Languages and Their Evolution"</a>. Scriptol. Archived from <a rel="nofollow" class="external text" href="http://www.scriptol.com/programming/history.php">the original</a> on 16 October 2012<span class="reference-accessdate">. Retrieved <span class="nowrap">29 March</span> 2012</span>.</cite></span>
</li>
<li id="cite_note-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-4">^</a></b></span> <span class="reference-text">or even a small application or <a href="Applet" title="Applet">applet</a></span>
</li>
<li id="cite_note-NETB-5"><span class="mw-cite-backlink">^ <a href="#cite_ref-NETB_5-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-NETB_5-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20120112061134/http://netbeans.org/project_downloads/usersguide/rcp-book-ch2.pdf">"The Benefits of Modular Programming"</a> <span class="cs1-format">(PDF)</span>. Netbeans Org. 2007. Archived from <a rel="nofollow" class="external text" href="http://netbeans.org/project_downloads/usersguide/rcp-book-ch2.pdf">the original</a> <span class="cs1-format">(PDF)</span> on 12 January 2012<span class="reference-accessdate">. Retrieved <span class="nowrap">29 March</span> 2012</span>.</cite></span>
</li>
<li id="cite_note-AUR-6"><span class="mw-cite-backlink"><b><a href="#cite_ref-AUR_6-0">^</a></b></span> <span class="reference-text"><cite id="CITEREFPiveta,_Eduardo_KesslerZancanella,_Luiz_Carlos" class="citation web cs1">Piveta, Eduardo Kessler; Zancanella, Luiz Carlos. <a rel="nofollow" class="external text" href="http://www-usr.inf.ufsm.br/~piveta/files/pivetaEcoopWs01.pdf">"Aurélia: Aspect Oriented Programming Using a Reflective Approach"</a> <span class="cs1-format">(PDF)</span>. IT Department of Santa Maria University<span class="reference-accessdate">. Retrieved <span class="nowrap">29 March</span> 2012</span>.</cite></span>
</li>
<li id="cite_note-TWIST-7"><span class="mw-cite-backlink"><b><a href="#cite_ref-TWIST_7-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20120224000708/http://twistedmatrix.com/documents/current/core/howto/components.html">"Components: Interfaces and Adapters"</a>. Twisted Matrix Labs. Archived from <a rel="nofollow" class="external text" href="http://twistedmatrix.com/documents/current/core/howto/components.html">the original</a> on 24 February 2012<span class="reference-accessdate">. Retrieved <span class="nowrap">29 March</span> 2012</span>.</cite></span>
</li>
<li id="cite_note-DRDOB-8"><span class="mw-cite-backlink"><b><a href="#cite_ref-DRDOB_8-0">^</a></b></span> <span class="reference-text"><cite id="CITEREFGuthery,_Scott1989" class="citation web cs1">Guthery, Scott (1 December 1989). <a rel="nofollow" class="external text" href="http://drdobbs.com/184408251">"Are the Emperor's New Clothes Object Oriented?"</a>. Dr. Dobb's Journal<span class="reference-accessdate">. Retrieved <span class="nowrap">29 March</span> 2012</span>.</cite></span>
</li>
<li id="cite_note-DOCSORA-9"><span class="mw-cite-backlink"><b><a href="#cite_ref-DOCSORA_9-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://docs.oracle.com/cd/E11882_01/java.112/e10588/chone.htm">"Introduction to Java in Oracle Database"</a>. Oracle docs<span class="reference-accessdate">. Retrieved <span class="nowrap">30 March</span> 2012</span>.</cite></span>
</li>
<li id="cite_note-HAMEU-10"><span class="mw-cite-backlink"><b><a href="#cite_ref-HAMEU_10-0">^</a></b></span> <span class="reference-text"><cite id="CITEREFHameurlain" class="citation book cs1">Hameurlain, Abdelkader. <i>Lecture Notes in Computer Science</i>.</cite></span>
</li>
<li id="cite_note-ICTS-11"><span class="mw-cite-backlink"><b><a href="#cite_ref-ICTS_11-0">^</a></b></span> <span class="reference-text"><cite id="CITEREFGrundy,_JohnPatel,_Rakesh2000" class="citation web cs1">Grundy, John; Patel, Rakesh (2000). <a rel="nofollow" class="external text" href="https://web.archive.org/web/20140316211820/http://www.ict.swin.edu.au/personal/jgrundy/papers/aswec2001.pdf">"Developing Software Components with the UML, Enterprise Java Beans and Aspects"</a> <span class="cs1-format">(PDF)</span>. Faculty of Information and Communication Technologies of Swinburne Universe of Technology. Archived from <a rel="nofollow" class="external text" href="http://www.ict.swin.edu.au/personal/jgrundy/papers/aswec2001.pdf">the original</a> <span class="cs1-format">(PDF)</span> on 16 March 2014<span class="reference-accessdate">. Retrieved <span class="nowrap">30 March</span> 2012</span>.</cite></span>
</li>
</ol></div></div>
<div class="navbox-styles"><style data-mw-deduplicate="TemplateStyles:r1129693374">
/* start https://en.wikipedia.org/ */


.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}


/* end https://en.wikipedia.org/ */
</style><style data-mw-deduplicate="TemplateStyles:r1236075235">
/* start https://en.wikipedia.org/ */


.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}@media print{body.ns-0 .mw-parser-output .navbox{display:none!important}}


/* end https://en.wikipedia.org/ */
</style></div><div role="navigation" class="navbox" aria-labelledby="Database_models59" style="padding:3px"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><style data-mw-deduplicate="TemplateStyles:r1239400231">
/* start https://en.wikipedia.org/ */


.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}


/* end https://en.wikipedia.org/ */
</style><div id="Database_models59" style="font-size:114%;margin:0 4em"><a href="Database_model" title="Database model">Database models</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Common models</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Flat-file_database" title="Flat-file database">Flat</a></li>
<li><a href="Hierarchical_database_model" title="Hierarchical database model">Hierarchical</a></li>
<li><a href="Dimensional_modeling" title="Dimensional modeling">Dimensional</a></li>
<li><a href="Network_model" title="Network model">Network</a></li>
<li><a href="Relational_model" title="Relational model">Relational</a></li>
<li><a href="Entity%E2%80%93relationship_model" title="Entity–relationship model">Entity–relationship</a>
<ul><li><a href="Enhanced_entity%E2%80%93relationship_model" title="Enhanced entity–relationship model">Enhanced</a></li></ul></li>
<li><a href="Graph_database" title="Graph database">Graph</a></li>
<li><a href="Object_database" title="Object database">Object-oriented</a></li>
<li><a href="Entity%E2%80%93attribute%E2%80%93value_model" title="Entity–attribute–value model">Entity–attribute–value</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Other models</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Online_analytical_processing#Multidimensional_databases" title="Online analytical processing">Multi-dimensional</a></li>
<li><a href="Array_DBMS" title="Array DBMS">Array</a></li>
<li><a href="Semantic_data_model" title="Semantic data model">Semantic</a></li>
<li><a href="Star_schema" title="Star schema">Star schema</a></li>
<li><a href="XML_database" title="XML database">XML database</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Implementations</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Flat-file_database" title="Flat-file database">Flat file</a></li>
<li><a href="Column-oriented_DBMS" class="mw-redirect" title="Column-oriented DBMS">Column-oriented</a></li>
<li><a href="Document-oriented_database" title="Document-oriented database">Document-oriented</a></li>
<li><a href="Object%E2%80%93relational_database" title="Object–relational database">Object–relational</a></li>
<li><a href="Deductive_database" title="Deductive database">Deductive</a></li>
<li><a href="Temporal_database" title="Temporal database">Temporal</a>
<ul><li><a href="Valid_time" title="Valid time">Valid time</a></li>
<li><a href="Transaction_time" title="Transaction time">Transaction time</a></li>
<li><a href="Decision_time" title="Decision time">Decision time</a></li></ul></li>
<li><a href="XML_database" title="XML database">XML data store</a></li>
<li><a href="Key%E2%80%93value_database" title="Key–value database">Key–value store</a></li>
<li><a href="Ordered_Key-Value_Store" class="mw-redirect" title="Ordered Key-Value Store">Ordered Key-Value Store</a></li>
<li><a href="Triplestore" title="Triplestore">Triplestore</a></li></ul>
</div></td></tr></tbody></table></div></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2025-01-03" href="https://en.wikipedia.org/wiki/?title=Component-oriented_database&amp;oldid=1267048501">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>

</body></html>